﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace dacli.modelos.dao
{
    public class ResultadosValoresDAO : EntidadDao
    {
        public ResultadosValores resultadosValores;
        public ResultadosValoresDAO()
            : base("resultados_valores")
        {

        }

        public ResultadosValores asignarId(long id)
        {
            this.consultar("id=" + id);
            return this.resultadosValores;
        }

        public override long incluir()
        {
            string sql = "INSERT INTO " + this.tabla + " (resultados_categorias_id, etiqueta, valor, especial) values" +
                        "(" + resultadosValores.resultadosCategorias.id + ",'" + resultadosValores.etiqueta + "','" + resultadosValores.valor + "','" + resultadosValores.especial + "')";
            return conexion.ejecutar(sql);
        }

        public override long modificar()
        {
            throw new NotImplementedException();
        }

        public override long eliminar()
        {
            throw new NotImplementedException();
        }

        public override bool consultar(string filtro)
        {
            modelos.dao.ResultadosCategoriasDAO resultadosCategoriasDAO = new ResultadosCategoriasDAO();
            string sql = "SELECT * FROM " + this.tabla + " WHERE "
+ filtro;
            System.Data.SqlClient.SqlDataReader reader = conexion.consultar(sql);
            if (reader.Read())
            {
                this.resultadosValores = new ResultadosValores();
                this.resultadosValores.id = reader.GetInt32(reader.GetOrdinal("id"));
                this.resultadosValores.resultadosCategorias = resultadosCategoriasDAO.asignarId(reader.GetInt32(reader.GetOrdinal("resultados_categorias_id")));
                this.resultadosValores.etiqueta = reader.GetString(reader.GetOrdinal("etiqueta"));
                this.resultadosValores.valor = reader.GetString(reader.GetOrdinal("valor"));
                this.resultadosValores.especial = reader.GetString(reader.GetOrdinal("especial"));
                reader.Close();
                return true;
            }
            return false;

        }
    }
}
